home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 November
/
EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso
/
earcd
/
util
/
cli
/
0utils.lha
/
0Utils
/
.ReadMe
< prev
next >
Wrap
Text File
|
1995-09-05
|
6KB
|
156 lines
0Utils
----------
Description:
This archive contains some more or less useful small
CLI programs with full intermediate source.
following is a list of the current commands.
BaseName - remove the suffix from a filename
CAR - remove all but the 1st arg
CDR - remove the 1st arg
Close - close a file opened w/ Open
Examine - examine a filesys object
Exists - does a specified file exist
ExpandArgs - expand all wildcards on cmdline
FilePart - get the last part of a filename
GetWord - get the nth word in a list
Open - Open a file
PathPart - get the path part of a filename
ReadLn - read from a file opened w/ Open
ScriptName - try to get the (temp) name of a scriptfile
SetOwner - change ownership of a filesys object (>= v39 needed!)
SRun - reinvoke the shell
SRunSX - reinvoke the shell, call Execute for scripts
Suffix - get the suffix part of a filename
Tackon - create a filename from pathpart filepart and suffix
Touch - touch files
VolName - get the name of the volume (or device) a file is on
WB_Delete - delete file and .info (also on WB)
WriteLn - write to a file opened w/ Open
Yes - output "y" lines
Make_IconXX - patch c:IconX to not only act on scripts
Notes:
* No Locale Support (should this be added ?)
since I thought, that it just would blow the code
* please note, that the commands Open Close, ReadLn and
WriteLn will break as soon as Amiga gets resource tracking,
since these commands rely on shared filehandles. (they
should be used only inside of scripts - better do not use
them directly, exept U know what U are doing)
* please note that it is possible to get the commandtemplate
of each of the commands by calling something like
> strings <cmdname> | search "*$ARG:"
without invoking it w/ '?' (but that is also possible)
(pipe is part of '2.04hacks' or builtin for some shells -
unfortunately I've been told that versioin of pipe might
be buggy, but there are some other versions on aminet;
strings is e.g. in my 'filters' collection (or again part
of some shells)) (it is possible to replace $ARG with any other
string - just edit gen.c.tplt)
* please note, that all those files are created using a
template (see compilation) to keep maintenance times
short and to save space (the .data files are only 1/2 of
the .c and .doc files).
The resulting code might be a little bit less efficient,
than it could be, but I was able to concentrate on the
main routines of each program, and global addes could be
performed by changing only one file. However the resulting
code still is less than 1 kB for most of the executables,
and I think this is not too much.
* I do _not_ know, why SAS/S does not set the 'PURE'
bit to the created executables, but I am quite sure, I
do not use any global variables. However I am not willing
to stress the tools resident in order to see, if they are
not residentable, since I do only use them from HD ...
(if U wanna use them resident, U must ensure this Urself
or at least send me a request - what has not yet happened)
Documentation:
* The docs are _not_ shipped with this archive; however
You may generate the documentation files via
> SMake doc
in the source directory (as long, as U have the recent
version of 0Parser)
Bugs:
* Have a look into .KnownBugs (if it exists)
* Noone can say 'my soft is totally bugfree' unless
she/he has proven it. If You do find any bug in a file
of this package, please let me know - my address can
be found below.
History:
* Please have a look into ".History"
Compilation:
* The .c sources do compile with SAS/C v6.51 (SCOptions &
SMakefile are part of the archive). The files may also
compile w/ DICE, but I won't guarantee for that.
(I have added a gen.dcc.tplt that must be used to create Dice
compilable sources, since some parts of the gen.sasc.tplt
are not portable; however the resulting code uses global
LibBases (protos did not work properly w/ dice 2.07r))
* To create '.c' Sources from '.data' files, U need the
program '0Parser', which should be part of this archive in
binary form; if U can not find it there, It can be found on
my homepage (see below) sorry, but the version of Parser
distributed w/ XDME source archive is outdated and won't
fill all needs. Perhaps it is also released as a standalone
Program in the next days (it seems to be stable now).
Sorry for the inconvenience.
* The sources make use of an undocumented feature in SAS/C:
due to the fact, that preprocessor and codegenerator are not
split, LibraryBases can be redefined after the pragma files
have been read. Unfortunately that behaviour is a bit limitated
so we sometimes have to compile with a litte hack: the defines
FIX_SASPP or FIX_SASOPT enable that, or compile with
"__USE_SYSBASE" _dis_abled.
Author:
My address for bugreports, flames, donations, questions,
suggestions etc.:
SnailMail: Bernd Noll
Brunnenstrasse 55 or Zu den Eichen 8
67661 Kaiserslautern 56567 Neuwied
Germany Germany
Phone: *631/55570 *2631/56271
EMail: b_noll@poker.informatik.uni-kl.de
noll@alma.student.uni-kl.de
IRC: `0` (less often persona, Onkel or DieNull)
(on channel #AmigaGER, #Germany or #PerryRhodan)
(The backticks around 0 are for IRC does accept
neither of 0, "0", '0')
WWW: http://galway.informatik.uni-kl.de/staff/noll/home.html
Legal Stuff:
* Please have a look into ".Legal"
greetings, `0`